package com.nanyang.tms.api.service.waybillreceipt;

import com.nanyang.common.core.domain.ApiResult;
import com.nanyang.common.core.page.PageBean;
import com.nanyang.tms.api.dto.request.waybillreceipt.WaybillCustomerNoQueryRequest;
import com.nanyang.tms.api.dto.request.waybillreceipt.WaybillReceiptFeeQueryRequest;
import com.nanyang.tms.api.dto.request.waybillreceipt.WaybillReceiptQueryRequest;
import com.nanyang.tms.api.dto.request.waybillreceipt.WaybillReceiptTrackQueryRequest;
import com.nanyang.tms.api.dto.response.waybillreceipt.*;

public interface WaybillReceiptRpcService {
    /**
     *
     * <p>listWaybillReceipt</p>
     * <p>Description:(前台-查询运单列表)</p>
     *
     * @param param
     * @return
     */
    ApiResult<PageBean<WaybillReceiptPageResponse>> listWaybillReceipt(WaybillReceiptQueryRequest param);
    /**
     *
     * <p>listWaybillReceipt</p>
     * <p>Description:(前台-查询运单详情)</p>
     *
     * @param param
     * @return
     */
    ApiResult<WaybillBaseDetailResponse> detailWaybillReceipt(WaybillCustomerNoQueryRequest param);
    /**
     *
     * <p>listWaybillReceiptFee</p>
     * <p>Description:(前台-查询费用列表)</p>
     *
     * @param param
     * @return
     */
    ApiResult<PageBean<WaybillReceiptFeePageResponse>> listWaybillReceiptFee(WaybillReceiptFeeQueryRequest param);
    /**
     *
     * <p>listWaybillReceiptFeeDetail</p>
     * <p>Description:(前台-查询费用详情)</p>
     *
     * @param param
     * @return
     */
    ApiResult<PageBean<WaybillReceiptFeeDetailResponse>> listWaybillReceiptFeeDetail(WaybillReceiptFeeQueryRequest param);

    /**
     *
     * <p>listWaybillReceiptFee</p>
     * <p>Description:(前台-查询轨迹列表)</p>
     *
     * @param param
     * @return
     */
    ApiResult<PageBean<WaybillReceiptTrackPageResponse>> listWaybillReceiptTrack(WaybillReceiptTrackQueryRequest param);
}
